
using Youz.Common.Helper;
using Youz.Common.DAL;
using Youz.Common.Entity;
using System;
using System.Data;
using System.Data.SqlClient;

namespace Youz.Common.BLL
{
    /// <summary>
    /// CMS_Message BLL Class
    /// </summary>
    public partial class CMS_MessageBLL : BaseBLL
    {
		CMS_MessageDAL dal;
		
        public CMS_MessageBLL()
        {
			dal = new CMS_MessageDAL();
			base.ModuleName = "CMS_Message";
            base.MenuName = "CMS_Message";
		}

        #region  成员方法
        /// <summary>
        ///  新增一条数据
        /// </summary>
        public bool Add(CMS_Message model)
        {
            var r = dal.Add(model);

            base.WriteOperationLog(OperationType.Add, r, Utility.GetJsonByObjectHaveTime(model));

            return r;
        }

        /// <summary>
        ///  保存一条数据
        /// </summary>
        public bool Update(CMS_Message model)
        {
            var r = dal.Update(model);

            base.WriteOperationLog(OperationType.Update, r, Utility.GetJsonByObjectHaveTime(model));

            return r;
        }

        /// <summary>
        /// 删除一条数据
        ///</summary>
        public bool Delete(Int64 MessageID)
        {
            var r = dal.Delete(MessageID);
			
			base.WriteOperationLog(OperationType.Delete, r, MessageID);

            return r;
        }

        /// <summary>
        /// 得到一个对象实体
        /// </summary>
        public CMS_Message Get(Int64 MessageID)
        {
            return dal.Get(MessageID);
        }
		
		/// <summary>
        /// 得到一个JSON对象
        /// </summary>
        public string GetJson(Int64 MessageID)
        {
            return Utility.GetJsonByObject(Get(MessageID));
        }

        /// <summary>
        /// 获得数据列表
        /// </summary>
        public DataSet Gets(string sqlWhere)
        {
            return dal.Gets(sqlWhere);
        }
		
		/// <summary>
        /// 获得前几行数据
        /// </summary>
        public DataSet Gets(int top, string sqlWhere, string filedOrder)
        {
            return dal.Gets(top, sqlWhere, filedOrder);
        }
		
		/// <summary>
        /// 获取记录总数
        /// </summary>
        public int GetRecordCount(string sqlWhere)
        {
            return dal.GetRecordCount(sqlWhere);
        }
		
		/// <summary>
        /// 获得数据列表分页
        /// </summary>
        public DataTable Gets(string sqlWhere, int pageindex, int pagesize, out int total, params SqlParameter[] cmdParms)
        {
            return dal.Gets(sqlWhere, pageindex, pagesize, out total, cmdParms);
        }
        #endregion  成员方法

        /// <summary>
        /// 获取未读取消息数
        /// </summary>
        /// <param name="memberAccount"></param>
        /// <returns></returns>
        public int GetUnreadCount(string memberAccount)
        {
            return dal.GetUnreadCount(memberAccount);
        }

        public void SetAllRead(string memberAccount)
        {
            dal.SetAllRead(memberAccount);
        }
    }
}


  